/* 
 * File:   main.cpp
 * Author: hyjkim
 *
 * Created on April 2, 2012, 9:28 AM
 */

#include <cstdlib>
#include <iostream>
#include <map>

#ifndef NODE_H
#define NODE_H
#include "Node.h"
#endif

#ifndef HLATREE_H
#define HLATREE_H
#include "HLATree.h"
#endif

#ifndef BAMREADER_H
#define BAMREADER_H
#include "BamReader.h"
#endif

#ifndef MSFREADER_H
#define MSFREADER_H
#include "MSFReader.h"
#endif


using namespace std;



/*
 * 
 */
int main(int argc, char** argv) {
    /*
// Initial Node test
    Node testNode("Test");
    testNode.respond();
    testNode.printName();

    string testName = testNode.getName();
    cout << testName << endl;

// std::map test
    map<string,string> testMap;
    map<string,int> testIntMap;

    testMap["B"]="test";
    cout << "testMap[\"B\"] = " << testMap["B"]  << endl;
    testIntMap["C"]=1;
    cout << "testIntMap[\"C\"] = " << testIntMap["C"]  << endl;

    if(testNode.hasName()) {
    cout << "this node has a name and it is " <<testNode.getName() << endl;
    }

// Testing the initialization of a Node with no name
    Node noName;
    if(noName.hasName()) {
    cout << "this node has a name" << endl;
    }
*/

/*
//Thu Jun  7 16:10:34 PDT 2012: Tree building working
// Testing the hla tree building method
    cout << "Calling hla tree building \n\n";
    HLATree testTree;
    //testTree.buildHLATree("../data/short.fasta.gz");
    testTree.buildHLATree("../data/hla_nuc_nospace.fasta");
    cout << "buildHLATree finished\n";

    testTree.printTree();
    testTree.printSequences();
*/


// test the bamreader
    BamReader myBamReader;
    myBamReader.respond();
    myBamReader.testOpenBam("/home/hyjkim/hla/hla-cpp/test_consensus_align/1_MONK_consensus.sorted.bam");
    return 0;
    

//Wed Jul 18 13:16:29 PDT 2012
// Testing MSF reader
//    MSFReader myMSFReader;
//    myMSFReader.openMSF("/home/hyjkim/hla/hla-cpp/reference/A_gen.msf");

}


